
using System.Linq.Expressions;
using Qdb.Linq.Caching;
using Qdb.Linq.Internals;
using Qdb.Query;

namespace Qdb.Linq.Expressions
{
	internal class OrderByAscendingClauseVisitor : OrderByClauseVisitorBase
	{
		private static ICache4<Expression, IQueryBuilderRecord> _cache = ExpressionCacheFactory.NewInstance(10);

		protected override ICache4<Expression, IQueryBuilderRecord> GetCachingStrategy()
		{
			return _cache;
		}

		protected override void ApplyDirection(IQuery query)
		{
			query.OrderAscending();
		}
	}
}
